/*
   Copyright (C) 2007 Laurent GRANIE.

   This program is free software; you can redistribute it and/or modify it
   under the terms of the GNU General Public License as published by the
   Free Software Foundation; either version 3, or (at your option) any later
   version.

   This program is distributed in the hope that it will be useful, but
   WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General
   Public License for more details.

   You should have received a copy of the GNU General Public License along
   with this program; if not, write to the Free Software Foundation, Inc.,
   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 */
package org.ambiance.azureus.commands.downloading;

import java.util.Calendar;

import org.ambiance.chain.AmbianceCommand;
import org.apache.commons.chain.Context;
import org.gudy.azureus2.core3.download.DownloadManager;

public class TooLongToStartCommand extends AmbianceCommand {

	public boolean execute(Context ctx) throws Exception {
		DownloadManager manager = (DownloadManager) ctx.get("manager");
		
		long  startLimitTime = Long.parseLong((String) ctx.get("start.limit.time"));

		if (manager.getNbSeeds() == 0 && manager.getStats().getCompleted() < 1
				&& (Calendar.getInstance().getTimeInMillis() - manager.getCreationTime()) > startLimitTime)
			return CHAIN_STOP;

		return CHAIN_CONTINUE;
	}

}
